package NdkTest.main;



import android.content.Context;
import android.opengl.GLSurfaceView;
import android.view.MotionEvent;

/**
 * Viewクラス
 *
 * @author function
 */
public class OpenGLView extends GLSurfaceView
{

	private GLESRenderer	m_GLESRenderer;

	/**
	 * コンストラクタ
	 *
	 * @param context
	 */
	public OpenGLView(Context context)
	{
		super(context);

		m_GLESRenderer = new GLESRenderer();

		NdkCode.initialize();
		
		setRenderer( m_GLESRenderer );
	}

	/**
	 * レジューム
	 */
	public void onResume() 
	{
       m_GLESRenderer.onResume();
    }

	/**
	 * ポーズ
	 */
    public void onPause()
    {
       // super.onPause();
        //mGLSurfaceView.onPause();
    }//

    /**
     * 終了処理
     */
    public void finish()
    {
    	// レンダラーの終了処理
    	m_GLESRenderer.finish();
    }
    
    /**
     * タッチイベント
     * 
     * @param event　タッチイベント.
     */
    @Override
    public boolean onTouchEvent(MotionEvent event)
    {
    	
    	switch( event.getAction() )
    	{
    	case MotionEvent.ACTION_DOWN:
    		NdkCode.onTouchEvent( event.getX(), event.getY(), 0 );
    		break;
    	case MotionEvent.ACTION_MOVE:
    		NdkCode.onTouchEvent( event.getX(), event.getY(), 1 );
    		break;
    	case MotionEvent.ACTION_CANCEL:
    		NdkCode.onTouchEvent( -1, -1, 2 );
    		break;
    	default:
    		NdkCode.onTouchEvent( -1, -1, 2 );
    	}
  
    	return true;
    }
}